package com.sq.partner.manager.dao;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

import com.sq.partner.manager.mybatis.model.GatewayTrans;
import com.sq.partner.manager.mybatis.model.GatewayUser;
import com.sq.partner.manager.util.Page;

/**
 * 交易记录
 * @author Kang Zhiqiang
 *
 */
public interface IGatewayTransDao  extends BaseDao{

	/**
	 * 条件查询trans
	 * @param trans
	 * @param user
	 * @param pageIndex
	 * @return
	 * @throws Exception
	 */
	public Page queryByCriteria(GatewayTrans trans, GatewayUser user, Integer pageIndex) throws Exception;
	/**
	 * 条件查询trans
	 * @param trans
	 * @param user
	 * @param pageIndex
	 * @return map
	 * @throws Exception
	 * @author 王雁
	 * @date 2015年5月6日10:46:56
	 */
	public Map queryzMapByCriteria(GatewayTrans trans, GatewayUser user, Integer pageIndex) throws Exception;
	
	/**
	 * 根据trans属性查询相应的List GatewayTrans
	 * @param trans
	 * @return
	 * @throws Exception
	 */
	public List<GatewayTrans> queryListByTrans(GatewayTrans trans) throws Exception;
	
	/**
	 * 更新（只更新参数里包含的字段）
	 * @param trans
	 * @return
	 * @throws Exception
	 */
	public boolean updateNotNull(GatewayTrans trans) throws Exception;
	
	/**
	 * 根据trans属性查询相应的有权限的List GatewayTrans
	 * @param user
	 * @param trans
	 * @return
	 * @throws Exception
	 */
	public List<GatewayTrans> queryListByTransAndDept(GatewayUser user,GatewayTrans trans) throws Exception;
	
	/**
	 * 新增
	 * @param trans
	 * @return
	 * @throws Exception
	 */
	public boolean save(GatewayTrans trans) throws Exception;
	
}
